package com.epmis.epmis.Mapper;

import com.epmis.epmis.pojo.Mission;
import com.epmis.epmis.pojo.Project;
import com.epmis.epmis.pojo.User;
import org.apache.ibatis.annotations.Mapper;

import java.util.HashMap;
import java.util.List;

@Mapper
public interface ProjectMapper {
    List<Project> getAllProject(HashMap<String,Object> map);

    List<Project> getAllTopProject(HashMap<String,Object> map);

    List<Project> getPublicProject(int enterpriseId);

    List<Project> getPrivateProject(String id);

    List<Project> findAllProject(HashMap<String,Object> map);

    List<Project> findAllDeleteProject(HashMap<String,Object> map);

    Project getProjectMessage(int id);

    User getHeadImgAndName(int id);

    List<Mission> getProjectAllMission(int id);

    List<Mission> getProjectAllWSMission(int id);

    List<Mission> getProjectAllPostponeMission(int id);

    List<Mission> getProjectAllDoingMission(int id);

    List<Mission> getProjectCompleteMission(int id);

    List<Mission> getProjectAllMissionProject(int id);

    List<Mission> getProjectAllTarget(int id);

    List<Mission> getProjectAllCost(int id);

    List<Mission> findIsExistMissionMember(HashMap<String,Object> map);

    int updateProjectName(HashMap<String,Object> map);

    int cancelTop(int id);

    int ToTop(int id);

    int updateProjectMembers(HashMap<String,Object> map);

    int updateProjectNumber(HashMap<String,Object> map);

    int updateProjectStateByNumber(HashMap<String,Object> map);

    int updateProjectRouge(int rouge,int id);

    int updateProjectDescription(HashMap<String,Object> map);

    int updateProjectState(HashMap<String,Object> map);

    int updateProjectStateDescription(HashMap<String,Object> map);

    int updateProjectCustomerUnit(HashMap<String,Object> map);

    int updateProjectCustomerRepresentative(HashMap<String,Object> map);

    int updateProjectType(HashMap<String,Object> map);

    int updateStartDate(HashMap<String,Object> map);

    int updateOverDate(HashMap<String,Object> map);

    int updateProjectPrincipal(int principal_id,int id);

    int updateProjectDelete(HashMap<String,Object> map);

    int updateDelete(int id);

    int updateDeleteProject(int id);

    int updateDeleteMission(int id);

    int deleteProject(int id);

    int deleteProjectMission(int id);

    int deleteProjectByNumber(HashMap<String,Object> map);
}
